home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / lalr.lha / lalr / src / Makefile < prev    next >
Makefile  |  1992-08-18  |  2KB  |  69 lines

  1. # $Id: Makefile,v 2.5 1992/02/04 15:52:19 grosch rel $
  2. LIB    = $(HOME)/lib
  3. BIN    = $(HOME)/bin
  4. MC    = MC
  5. MLIB    = ../../reuse/src
  6. FRONT    = ../../front/src
  7. MFLAGS    = -noindex -norange
  8.  
  9. DEFSMC    = ArgCheck.md Automaton.md Check.md Compress.md Continue.md \
  10.       Debug.md Default.md Final.md Gen.md GenLang.md \
  11.       Infos.md Lookahead.md LR.md Reduce.md
  12.  
  13. MODSMC    = ArgCheck.mi Automaton.mi Check.mi Compress.mi Continue.mi \
  14.       Debug.mi Default.mi Final.mi Gen.mi lalr.mi GenLang.mi \
  15.       Infos.mi Lookahead.mi LR.mi Reduce.mi
  16.  
  17. DEFSM2C    = ArgCheck.def Automaton.def Check.def Compress.def Continue.def \
  18.       Debug.def Default.def Final.def Gen.def GenLang.def \
  19.       Infos.def Lookahead.def LR.def Reduce.def
  20.  
  21. MODSM2C    = ArgCheck.mod Automaton.mod Check.mod Compress.mod Continue.mod \
  22.       Debug.mod Default.mod Final.mod Gen.mod lalr.mod GenLang.mod \
  23.       Infos.mod Lookahead.mod LR.mod Reduce.mod
  24.  
  25. PLIB    = ParserDrv.mi Parser.md Parser.mi Errors.md Errors.mi Scanner.md Scanner.mi \
  26.       ParserDrv.c Parser.c Parser.h Errors.c Errors.h Scanner.c Scanner.h
  27.  
  28. lalr:    $(MC)
  29.  
  30. # compilation of lalr with MOCKA (mc)
  31.  
  32. MC:    $(DEFSMC) $(MODSMC)
  33.     echo p lalr | mc $(MFLAGS) -d $(FRONT) -d $(MLIB)
  34.  
  35. # compilation of lalr with SUN Modula compiler (m2c)
  36.  
  37. M2C:    $(DEFSM2C) $(MODSM2C)
  38.     make -f MakefileM2C LIB=$(MLIB) FRONT=$(FRONT)
  39.  
  40. install:    lalr lalr.sh $(LIB)/lalr
  41.     if test $(LIB) = $(BIN); then echo error: BIN = LIB; false; else true; fi
  42.     sed 's;LIB;$(LIB);' < lalr.sh > $(BIN)/lalr
  43.     chmod a+rx $(BIN)/lalr
  44.     install -c -s -m 755 lalr $(LIB)/lalr
  45.     cd ../lib; cp $(PLIB) $(LIB)/lalr
  46.     cd $(LIB)/lalr; chmod a+r $(PLIB)
  47.  
  48. # installation directories
  49.  
  50. $(LIB)/lalr:    $(LIB)
  51.     sh -c "if test ! -d $(LIB)/lalr; then mkdir $(LIB)/lalr; else true; fi"
  52.  
  53. m2c:
  54.     co RCS/*
  55.     ln *.m[id] ../m2c
  56.     cd ../m2c; make sources MFLAGS="-c -d../../front/src -d../../reuse/src"
  57.     cd ../m2c; rm -f *.m[id]
  58.  
  59. clean:
  60.     rm -f core *.[dimor] *.def *.mod *.sym ERRORS LISTING _Debug *.bak
  61.  
  62. .SUFFIXES:    .def .mod .md .mi
  63.  
  64. .md.def:
  65.     ln $*.md $*.def
  66.  
  67. .mi.mod:
  68.     ln $*.mi $*.mod
  69.